name: Browser

on:
  push:
  pull_request_target:
    types: [labeled]

jobs:
  browser:
    if: github.repository == 'uuidjs/uuid' && (contains(github.event.pull_request.labels.*.name, 'safe to test') || github.event_name == 'push')
    runs-on: ubuntu-latest
    timeout-minutes: 30

    steps:
      - uses: actions/checkout@v3
        with:
          fetch-depth: 10
      - name: Use Node.js 16.x
        uses: actions/setup-node@v3
        with:
          node-version: 16.x
      - run: npm ci
      - name: Test Browser
        run: npm run test:browser
        env:
          CI: true
          BROWSERSTACK_USER: ${{ secrets.BROWSERSTACK_USER }}
          BROWSERSTACK_ACCESS_KEY: ${{ secrets.BROWSERSTACK_ACCESS_KEY }}
      - run: npx bundlewatch --config bundlewatch.config.json
        env:
          BUNDLEWATCH_GITHUB_TOKEN: ${{ secrets.BUNDLEWATCH_GITHUB_TOKEN }}
